//
//  NSString+Extension.h
//  JWBrowser
//
//  Created by Dejun Liu on 14-11-7.
//  Copyright (c) 2014年 JW. All rights reserved.
//

#import <Foundation/Foundation.h>
typedef enum : NSUInteger {
    VersionCompareResultEqual, //defalut version = otherVersion
    VersionCompareResultLarge, //defalut version > otherVersion
    VersionCompareResultLitte, //defalut version < otherVersion
    VersionCompareResultNoRst //unknown
} VersionCompareResult;

@interface NSString (Extension)

/**
 *  是否包含一个字符串
 *
 *  @param aString 目标字符串
 *
 *  @return YES包含，NO不包含
 */
- (BOOL)containsString:(NSString *)aString;
/**
 *  是否包含数组中的任一字符串
 *
 *  @param stringArray 字符串数组：@[@"astr",@"bstr",@"cstr"]
 *
 *  @return YES包含，NO不包含
 */
- (BOOL)containsStringArray:(NSArray *)stringArray;
/**
 *  是否包含中文字符
 *
 *  @return YES包含，NO不包含
 */
- (BOOL)isContainChinese;
- (BOOL)isEmpty;
- (NSString *)removeString:(NSString *)string;
- (NSString *)trimLeftAndRightWhiteSpace;
- (NSString *)trimAllWhiteSpace;
/**
 *  http://www.baidu.com/世界你好
 *  主要针对中文URL加密：
 *  http://www.baidu.com/%E4%B8%96%E7%95%8C%E4%BD%A0%E5%A5%BD
 *  @return 加密后的字串
 */
- (NSString *)URLEncodeString;
/**
 *  http://www.baidu.com/世界你好
 *  加密包含中文冒号斜杠的所有非英文字符
 *  http%3A%2F%2Fwww.baidu.com%2F%E4%B8%96%E7%95%8C%E4%BD%A0%E5%A5%BD
 *  @return 加密后的字串
 */
- (NSString *)URLEncodeAllString;

- (NSString *)URLDecodeString;
- (NSInteger )hexInteger;
- (NSString *) stringFromMD5;
- (NSString *) md5;
- (NSString*) sha1;
- (VersionCompareResult )versionCompareWithOtherVersion:(NSString *)otherVersion;

/**
 *  是否是合法的网址
 *
 *  @return YES可用的网址，NO不可用网址
 */
- (BOOL)isValidURL;

/**
 *  返回一个合法的网址，主要针对某些网址可用，但是没有加http的网址
 *
 *  @return 规则的网址
 */
- (NSString *) convertToValidURL;

- (NSData *) dataUTF8;
@end
